package com.ruoyi.fangyuan.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 房源列表对象 tb_room_info
 * 
 * @author ruoyi
 * @date 2023-04-23
 */
@Data
public class TbRoomInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private String id;

    /** 外键 */
    @Excel(name = "外键")
    private String houseId;

    /** 封面 */
    @Excel(name = "封面")
    private String frontCover;

    /** 房源名称 */
    @Excel(name = "房源名称")
    private String roomName;

    /** 房源号码 */
    @Excel(name = "房源号码")
    private String roomCode;

    /** 面积 */
    @Excel(name = "面积")
    private BigDecimal proportion;

    /** 朝向 */
    @Excel(name = "朝向")
    private Long direction;

    /** 租赁费用 */
    @Excel(name = "租赁费用")
    private BigDecimal rental;

    /** 装修风格 */
    @Excel(name = "装修风格")
    private String decorateStyle;

    /** 楼盘名称 */
    @Excel(name = "楼盘名称")
    private String buildingName;

    /** 集中式房源楼层 */
    @Excel(name = "集中式房源楼层")
    private Long floor;

    /** 集中式房源楼层总数 */
    @Excel(name = "集中式房源楼层总数")
    private Long floorCount;

    /** 状态 */
    @Excel(name = "状态")
    private Long status;

    /** 公共设备 */
    @Excel(name = "公共设备")
    private String privateFacility;

    /** 推荐房源1.推荐 2.不推荐 */
    @Excel(name = "推荐房源")
    private Long recommended;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long reserve1;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long reserve2;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String reserve3;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String reserve4;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String reserve5;

    /** 部门 */
    @Excel(name = "部门")
    private Long deptId;

    /** 风格 */
    @Excel(name = "风格")
    private String styleId;

    /** 装修时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "装修时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishDate;

    /** 空置时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "空置时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date vacancyDate;

    /** 删除标识 */
    @Excel(name = "删除标识")
    private Integer delFlg;

    @TableField(exist = false)
    private Integer publishStatus;

    @TableField(exist = false)
    private String name;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setHouseId(String houseId) 
    {
        this.houseId = houseId;
    }

    public String getHouseId() 
    {
        return houseId;
    }
    public void setFrontCover(String frontCover) 
    {
        this.frontCover = frontCover;
    }

    public String getFrontCover() 
    {
        return frontCover;
    }
    public void setRoomName(String roomName) 
    {
        this.roomName = roomName;
    }

    public String getRoomName() 
    {
        return roomName;
    }
    public void setRoomCode(String roomCode) 
    {
        this.roomCode = roomCode;
    }

    public String getRoomCode() 
    {
        return roomCode;
    }
    public void setProportion(BigDecimal proportion) 
    {
        this.proportion = proportion;
    }

    public BigDecimal getProportion() 
    {
        return proportion;
    }
    public void setDirection(Long direction) 
    {
        this.direction = direction;
    }

    public Long getDirection() 
    {
        return direction;
    }
    public void setRental(BigDecimal rental) 
    {
        this.rental = rental;
    }

    public BigDecimal getRental() 
    {
        return rental;
    }
    public void setDecorateStyle(String decorateStyle) 
    {
        this.decorateStyle = decorateStyle;
    }

    public String getDecorateStyle() 
    {
        return decorateStyle;
    }
    public void setBuildingName(String buildingName) 
    {
        this.buildingName = buildingName;
    }

    public String getBuildingName() 
    {
        return buildingName;
    }
    public void setFloor(Long floor) 
    {
        this.floor = floor;
    }

    public Long getFloor() 
    {
        return floor;
    }
    public void setFloorCount(Long floorCount) 
    {
        this.floorCount = floorCount;
    }

    public Long getFloorCount() 
    {
        return floorCount;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setPrivateFacility(String privateFacility) 
    {
        this.privateFacility = privateFacility;
    }

    public String getPrivateFacility() 
    {
        return privateFacility;
    }
    public void setRecommended(Long recommended) 
    {
        this.recommended = recommended;
    }

    public Long getRecommended() 
    {
        return recommended;
    }
    public void setReserve1(Long reserve1) 
    {
        this.reserve1 = reserve1;
    }

    public Long getReserve1() 
    {
        return reserve1;
    }
    public void setReserve2(Long reserve2) 
    {
        this.reserve2 = reserve2;
    }

    public Long getReserve2() 
    {
        return reserve2;
    }
    public void setReserve3(String reserve3) 
    {
        this.reserve3 = reserve3;
    }

    public String getReserve3() 
    {
        return reserve3;
    }
    public void setReserve4(String reserve4) 
    {
        this.reserve4 = reserve4;
    }

    public String getReserve4() 
    {
        return reserve4;
    }
    public void setReserve5(String reserve5) 
    {
        this.reserve5 = reserve5;
    }

    public String getReserve5() 
    {
        return reserve5;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setStyleId(String styleId) 
    {
        this.styleId = styleId;
    }

    public String getStyleId() 
    {
        return styleId;
    }
    public void setFinishDate(Date finishDate) 
    {
        this.finishDate = finishDate;
    }

    public Date getFinishDate() 
    {
        return finishDate;
    }
    public void setVacancyDate(Date vacancyDate) 
    {
        this.vacancyDate = vacancyDate;
    }

    public Date getVacancyDate() 
    {
        return vacancyDate;
    }
    public void setDelFlg(Integer delFlg) 
    {
        this.delFlg = delFlg;
    }

    public Integer getDelFlg() 
    {
        return delFlg;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("houseId", getHouseId())
            .append("frontCover", getFrontCover())
            .append("roomName", getRoomName())
            .append("roomCode", getRoomCode())
            .append("proportion", getProportion())
            .append("direction", getDirection())
            .append("rental", getRental())
            .append("decorateStyle", getDecorateStyle())
            .append("buildingName", getBuildingName())
            .append("floor", getFloor())
            .append("floorCount", getFloorCount())
            .append("status", getStatus())
            .append("privateFacility", getPrivateFacility())
            .append("recommended", getRecommended())
            .append("reserve1", getReserve1())
            .append("reserve2", getReserve2())
            .append("reserve3", getReserve3())
            .append("reserve4", getReserve4())
            .append("reserve5", getReserve5())
            .append("deptId", getDeptId())
            .append("createTime", getCreateTime())
            .append("styleId", getStyleId())
            .append("finishDate", getFinishDate())
            .append("vacancyDate", getVacancyDate())
            .append("delFlg", getDelFlg())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
